package tr.edu.metu.is550.isell.rest.message;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement(name = "property")
public class GetPropertyDetailsResponseMessage {


    @XmlElement
    @NotNull
    private Long id;


    @XmlElement
    @NotNull
    @Size(min = 1, max = 500, message = "invalid.size")
    private String title;

    @XmlElement
    @Size(min = 1, max = 4000, message = "invalid.size")
    private String details;

    @XmlElement
    @Size(min = 1, max = 4000, message = "invalid.size")
    private String address;


    @XmlElement
    @NotNull
    private Double price;

    @XmlElement
    @NotNull
    private Integer adtype;

    @XmlElement
    @NotNull
    private Integer propertyType;

    @XmlElement
    @NotNull
    private Integer numberOfRooms;

    @XmlElement
    @NotNull
    private Double latitude;

    @XmlElement
    @NotNull
    private Double longitude;

    @XmlElement
    private Long advirtiserId;

    @XmlElement
    private String advirtiserName;

    @XmlElement
    private String advirtiserSurname;

    @XmlElement
    private String advirtiserPhone;

    @XmlElement
    private String advirtiserEmail;

    @XmlElement
    private String advirtiserAddress;

    @XmlElement
    private String advirtiserLoginName;


    public String getTitle() {
        return title;
    }

    public String getDetails() {
        return details;
    }

    public String getAddress() {
        return address;
    }

    public Double getPrice() {
        return price;
    }

    public Integer getAdtype() {
        return adtype;
    }

    public Integer getPropertyType() {
        return propertyType;
    }

    public Integer getNumberOfRooms() {
        return numberOfRooms;
    }


    public Double getLatitude() {
        return latitude;
    }

    public void setLatitude(Double latitude) {
        this.latitude = latitude;
    }

    public Double getLongitude() {
        return longitude;
    }

    public void setLongitude(Double longitude) {
        this.longitude = longitude;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public void setDetails(String details) {
        this.details = details;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public void setPrice(Double price) {
        this.price = price;
    }

    public void setAdtype(Integer adtype) {
        this.adtype = adtype;
    }

    public void setPropertyType(Integer propertyType) {
        this.propertyType = propertyType;
    }

    public void setNumberOfRooms(Integer numberOfRooms) {
        this.numberOfRooms = numberOfRooms;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getAdvirtiserId() {
        return advirtiserId;
    }

    public void setAdvirtiserId(Long advirtiserId) {
        this.advirtiserId = advirtiserId;
    }

    public String getAdvirtiserName() {
        return advirtiserName;
    }

    public void setAdvirtiserName(String advirtiserName) {
        this.advirtiserName = advirtiserName;
    }

    public String getAdvirtiserSurname() {
        return advirtiserSurname;
    }

    public void setAdvirtiserSurname(String advirtiserSurname) {
        this.advirtiserSurname = advirtiserSurname;
    }

    public String getAdvirtiserPhone() {
        return advirtiserPhone;
    }

    public void setAdvirtiserPhone(String advirtiserPhone) {
        this.advirtiserPhone = advirtiserPhone;
    }

    public String getAdvirtiserEmail() {
        return advirtiserEmail;
    }

    public void setAdvirtiserEmail(String advirtiserEmail) {
        this.advirtiserEmail = advirtiserEmail;
    }

    public String getAdvirtiserAddress() {
        return advirtiserAddress;
    }

    public void setAdvirtiserAddress(String advirtiserAddress) {
        this.advirtiserAddress = advirtiserAddress;
    }

    public String getAdvirtiserLoginName() {
        return advirtiserLoginName;
    }

    public void setAdvirtiserLoginName(String advirtiserLoginName) {
        this.advirtiserLoginName = advirtiserLoginName;
    }
}
